package com.ticket.sass.admin.util;


import com.ticket.sass.admin.dto.input.film.FilmVersionInput;

import java.util.HashSet;
import java.util.List;
import java.util.Set;

/**
 * @author ywb
 * @date 2024-06-19 15:04
 */
public class ValidatorUtil {
    public static boolean isCodeUnique(List<FilmVersionInput> versions) {
        if (versions == null || versions.isEmpty()) {
            return true;
        }
        
        Set<String> codeSet = new HashSet<>();
        for (FilmVersionInput version : versions) {
            if (!codeSet.add(version.getCode())) {
                return false;
            }
        }
        return true;
    }
    
    /**
     * 验证
     * @param ids ID列表
     * @return 如果存在重复ID返回false，否则返回true
     */
    public static boolean hasDuplicate(List<Long> ids) {
        if (ids == null || ids.isEmpty()) {
            return true;
        }
        
        Set<Long> uniqueIds = new HashSet<>();
        for (Long id : ids) {
            if (!uniqueIds.add(id)) {
                return false; // 如果添加失败，表示存在重复ID
            }
        }
        return true; // 无重复ID
    }
}
